﻿using System;

namespace CPN.PJN.Silverlight.Common.Configuration
{
    /// <summary>
    /// Cette classe représente les données retournées après le chargement de la configuration
    /// </summary>
    public class ConfigurationDownloadCompletedArgs : EventArgs 
    {
        #region Error Property
        
        /// <summary>
        /// Erreur applicative 
        /// </summary>
        public Exception Error { get; private set; } 

        #endregion

        #region Result Property

        /// <summary>
        /// Contenu des données
        /// </summary>
        public string Result { get; private set; }

        #endregion

        #region UserState Property

        /// <summary>
        /// Objet utile pour l'utilisateur
        /// </summary>
        public object UserState { get; private set; }

        #endregion

        #region Constructors

        /// <summary>
        /// Constructeur par défaut
        /// </summary>
        /// <param name="data">données issus du chargement de la configuration</param>
        /// <param name="userState">Objet utile pour l'utilisateur</param>
        /// <param name="error">Erreur applicative </param>
        public ConfigurationDownloadCompletedArgs(string data, object userState, Exception error)
        {
            this.Result = data;
            this.UserState = userState;
            this.Error = error;
        }

        #endregion
    }
}
